package com.bsg.upm.entity;

import java.io.Serializable;

/**
 * 子服务定义实体类
 * 
 * @author HCK
 *
 */
public class DefinitionSubServEntity implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	/**
	 * 子服务定义编码
	 */
	private String id;

	/**
	 * 子服务定义名称
	 */
	private String name;

	/**
	 * 描述
	 */
	private String description;

	/**
	 * 子服务定义类型
	 */
	private String type;

	/**
	 * 默认数据目录容量
	 */
	private Long defaultDataDirSize;

	/**
	 * 默认数据目录设备类型
	 */
	private String defaultDataDirDeviceType;

	/**
	 * 默认日志目录容量
	 */
	private Long defaultLogDirSize;

	/**
	 * 默认日志目录设备类型
	 */
	private String defaultLogDirDeviceType;

	/**
	 * 配置文件端口key
	 */
	private String portKey;

	/**
	 * 部署优先级
	 */
	private Integer priority;

	/**
	 * 允许备份
	 */
	private Boolean canBackup;

	private Boolean compose;

	/**
	 * 所属服务定义
	 */
	private DefinitionServEntity definitionServ;

	/**
	 * 默认子服务架构
	 */
	private DefinitionSubServArchEntity defaultDefinitionSubServArch;

	/**
	 * 默认子服务单元规模
	 */
	private DefinitionSubServUnitScaleEntity defaultDefinitionSubServUnitScale;

	/**
	 * 获取子服务定义编码
	 * 
	 * @return id 子服务定义编码
	 */
	public String getId() {
		return id;
	}

	/**
	 * 设置子服务定义编码
	 * 
	 * @param id
	 *            子服务定义编码
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取子服务定义名称
	 * 
	 * @return name 子服务定义名称
	 */
	public String getName() {
		return name;
	}

	/**
	 * 设置子服务定义名称
	 * 
	 * @param name
	 *            子服务定义名称
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * 获取描述
	 * 
	 * @return description 描述
	 */
	public String getDescription() {
		return description;
	}

	/**
	 * 设置描述
	 * 
	 * @param description
	 *            描述
	 */
	public void setDescription(String description) {
		this.description = description;
	}

	/**
	 * 获取子服务定义类型
	 * 
	 * @return type 子服务定义类型
	 */
	public String getType() {
		return type;
	}

	/**
	 * 设置子服务定义类型
	 * 
	 * @param type
	 *            子服务定义类型
	 */
	public void setType(String type) {
		this.type = type;
	}

	/**
	 * 获取默认数据目录容量
	 * 
	 * @return defaultDataDirSize 默认数据目录容量
	 */
	public Long getDefaultDataDirSize() {
		return defaultDataDirSize;
	}

	/**
	 * 设置默认数据目录容量
	 * 
	 * @param defaultDataDirSize
	 *            默认数据目录容量
	 */
	public void setDefaultDataDirSize(Long defaultDataDirSize) {
		this.defaultDataDirSize = defaultDataDirSize;
	}

	/**
	 * 获取默认数据目录设备类型
	 * 
	 * @return defaultDataDirDeviceType 默认数据目录设备类型
	 */
	public String getDefaultDataDirDeviceType() {
		return defaultDataDirDeviceType;
	}

	/**
	 * 设置默认数据目录设备类型
	 * 
	 * @param defaultDataDirDeviceType
	 *            默认数据目录设备类型
	 */
	public void setDefaultDataDirDeviceType(String defaultDataDirDeviceType) {
		this.defaultDataDirDeviceType = defaultDataDirDeviceType;
	}

	/**
	 * 获取默认日志目录容量
	 * 
	 * @return defaultLogDirSize 默认日志目录容量
	 */
	public Long getDefaultLogDirSize() {
		return defaultLogDirSize;
	}

	/**
	 * 设置默认日志目录容量
	 * 
	 * @param defaultLogDirSize
	 *            默认日志目录容量
	 */
	public void setDefaultLogDirSize(Long defaultLogDirSize) {
		this.defaultLogDirSize = defaultLogDirSize;
	}

	/**
	 * 获取默认日志目录设备类型
	 * 
	 * @return defaultLogDirDeviceType 默认日志目录设备类型
	 */
	public String getDefaultLogDirDeviceType() {
		return defaultLogDirDeviceType;
	}

	/**
	 * 设置默认日志目录设备类型
	 * 
	 * @param defaultLogDirDeviceType
	 *            默认日志目录设备类型
	 */
	public void setDefaultLogDirDeviceType(String defaultLogDirDeviceType) {
		this.defaultLogDirDeviceType = defaultLogDirDeviceType;
	}

	/**
	 * 获取配置文件端口key
	 * 
	 * @return portKey 配置文件端口key
	 */
	public String getPortKey() {
		return portKey;
	}

	/**
	 * 设置配置文件端口key
	 * 
	 * @param portKey
	 *            配置文件端口key
	 */
	public void setPortKey(String portKey) {
		this.portKey = portKey;
	}

	/**
	 * 获取部署优先级
	 * 
	 * @return priority 部署优先级
	 */
	public Integer getPriority() {
		return priority;
	}

	/**
	 * 设置部署优先级
	 * 
	 * @param priority
	 *            部署优先级
	 */
	public void setPriority(Integer priority) {
		this.priority = priority;
	}

	/**
	 * 获取允许备份
	 * 
	 * @return canBackup 允许备份
	 */
	public Boolean getCanBackup() {
		return canBackup;
	}

	/**
	 * 设置允许备份
	 * 
	 * @param canBackup
	 *            允许备份
	 */
	public void setCanBackup(Boolean canBackup) {
		this.canBackup = canBackup;
	}

	/**
	 * 获取compose
	 * 
	 * @return compose compose
	 */
	public Boolean getCompose() {
		return compose;
	}

	/**
	 * 设置compose
	 * 
	 * @param compose
	 *            compose
	 */
	public void setCompose(Boolean compose) {
		this.compose = compose;
	}

	/**
	 * 获取所属服务定义
	 * 
	 * @return definitionServ 所属服务定义
	 */
	public DefinitionServEntity getDefinitionServ() {
		return definitionServ;
	}

	/**
	 * 设置所属服务定义
	 * 
	 * @param definitionServ
	 *            所属服务定义
	 */
	public void setDefinitionServ(DefinitionServEntity definitionServ) {
		this.definitionServ = definitionServ;
	}

	/**
	 * 获取默认子服务架构
	 * 
	 * @return defaultDefinitionSubServArch 默认子服务架构
	 */
	public DefinitionSubServArchEntity getDefaultDefinitionSubServArch() {
		return defaultDefinitionSubServArch;
	}

	/**
	 * 设置默认子服务架构
	 * 
	 * @param defaultDefinitionSubServArch
	 *            默认子服务架构
	 */
	public void setDefaultDefinitionSubServArch(DefinitionSubServArchEntity defaultDefinitionSubServArch) {
		this.defaultDefinitionSubServArch = defaultDefinitionSubServArch;
	}

	/**
	 * 获取默认子服务单元规模
	 * 
	 * @return defaultDefinitionSubServUnitScale 默认子服务单元规模
	 */
	public DefinitionSubServUnitScaleEntity getDefaultDefinitionSubServUnitScale() {
		return defaultDefinitionSubServUnitScale;
	}

	/**
	 * 设置默认子服务单元规模
	 * 
	 * @param defaultDefinitionSubServUnitScale
	 *            默认子服务单元规模
	 */
	public void setDefaultDefinitionSubServUnitScale(
			DefinitionSubServUnitScaleEntity defaultDefinitionSubServUnitScale) {
		this.defaultDefinitionSubServUnitScale = defaultDefinitionSubServUnitScale;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "DefinitionSubServEntity [id=" + id + ", name=" + name + ", description=" + description + ", type="
				+ type + ", defaultDataDirSize=" + defaultDataDirSize + ", defaultDataDirDeviceType="
				+ defaultDataDirDeviceType + ", defaultLogDirSize=" + defaultLogDirSize + ", defaultLogDirDeviceType="
				+ defaultLogDirDeviceType + ", portKey=" + portKey + ", priority=" + priority + ", canBackup="
				+ canBackup + ", compose=" + compose + ", definitionServ=" + definitionServ
				+ ", defaultDefinitionSubServArch=" + defaultDefinitionSubServArch
				+ ", defaultDefinitionSubServUnitScale=" + defaultDefinitionSubServUnitScale + "]";
	}

}
